#ifndef ORGANIZER_H_
#define ORGANIZER_H_

class Employee;
class Memento;

/*
 * Organizer is the class which is used to
 * create memento from current state
 * and restore to original state from memento.
 */

class Organizer
{
public:
	Organizer(void);
	Organizer(Employee*);
	~Organizer(void);

public:
	void setEmployee(Employee*);
	Employee* getEmployee();

	Memento* createMemento();
	void restoreToMemento(Memento*);

private:
	Employee* m_pEmployee;
};

#endif // ORGANIZER_H_
